package com.xuecheng.manage_cms.service;

import com.xuecheng.framework.domain.cms.CmsConfig;
import com.xuecheng.framework.domain.cms.CmsPage;
import com.xuecheng.framework.domain.cms.request.QueryPageRequest;
import com.xuecheng.framework.domain.cms.response.CmsPageResult;
import com.xuecheng.framework.domain.cms.response.CmsPostPageResult;
import com.xuecheng.framework.model.response.QueryResponseResult;
import com.xuecheng.framework.model.response.ResponseResult;

public interface PageService {

    /**
     * 页面查询方法
     * @param page 页码，从1开始记数
     * @param size 每页记录数
     * @param queryPageRequest 查询条件
     * @return
     */
    QueryResponseResult findList(int page, int size, QueryPageRequest queryPageRequest);

    /**
     *
     * @param cmsPage 页面里所有信息
     * @return 操作结果
     */
    CmsPageResult add(CmsPage cmsPage);

    /**
     *
     * @param id 页面的id
     * @return 页面信息
     */
    CmsPage getById(String id);

    /**
     *
     * @param id 页面的id
     * @param cmsPage 表单传入的信息
     * @return CmsPageResult 处理结果
     */
    CmsPageResult update(String id, CmsPage cmsPage);

    /**
     *
     * @param id 页面的id
     * @return 响应结果
     */
    ResponseResult delete(String id);

    /**
     *
     * @param pageId 页面id
     * @return 页面html内容
     */
    String getPageHtml(String pageId);

    /**
     *
     * @param pageId 页面id
     * @return 响应结果
     */
    ResponseResult postPage(String pageId);

    CmsPageResult save(CmsPage cmsPage);

    CmsPostPageResult postPageQuick(CmsPage cmsPage);
}
